package com.ph.irp.base.assistantmaterial.dao;
/**
 * 供应商分类信息
 */
import java.sql.SQLException;
import java.util.List;
import com.ph.irp.model.PBaseAssistantmaterialSuppliercategory;

public interface PBaseAssistantmaterialSuppliercategoryDao {
	/**
	 * 查找所有的供应商分类信息
	 * @return
	 */
	public List<PBaseAssistantmaterialSuppliercategory> getALLSuppliercategory()throws Throwable;
	/**
	 * 根据供应商代码查找供应商分类信息
	 * @param supplierCategoryCode
	 * @return
	 */
	public List<PBaseAssistantmaterialSuppliercategory> getSuppliercategoryByCode(String supplierCategoryCode)throws Throwable;
	/**
	 * 根据供应商分类名称查找供应商分类信息
	 * @param supplierCategoryName
	 * @return
	 */
	public List<PBaseAssistantmaterialSuppliercategory> getSuppliercategoryByName(String supplierCategoryName)throws Throwable;
	/**
	 * 根据供应商分类代码和供应商分类名称查找供应商分类信息
	 * @param supplierCategoryCode
	 * @param supplierCategoryName
	 * @return
	 */
	public List<PBaseAssistantmaterialSuppliercategory> getSuppliercategoryByCodeAndName(String supplierCategoryCode,String supplierCategoryName)throws Throwable;
	/**
	 * 跟据供应商分类Id查找供应商分类信息
	 * @return
	 */
	public PBaseAssistantmaterialSuppliercategory getSuppliercategoryById(int supplierCategoryId)throws Throwable;
	/**
	 * 增加供应商分类信息
	 * @param suppliercatagoryModel
	 */
	public void addSuppliercategory(PBaseAssistantmaterialSuppliercategory suppliercatagoryModel)throws Throwable;
	/**
	 * 根据供应商分类Id删除供应商分类信息，可以删除多条
	 * @param supplierCategoryIds
	 */
	public void deleteSuppliercategoryById(Object[] supplierCategoryIds)throws Throwable;
	/**
	 * 修改供应商分类信息
	 * @param suppliercatagoryModel
	 */
	public void updateSuppliercategory(PBaseAssistantmaterialSuppliercategory suppliercatagoryModel)throws Throwable;
	/**
	 * 检查是否存在相同的供应商信息代码
	 * @param supplierCategoryCode
	 * @return
	 */
	public boolean isSameCode(String supplierCategoryCode)throws Throwable;
	/**
	 * 检查是否存在相同的供应商类别名称
	 * @param supplierCategoryCode
	 * @return
	 * @throws Throwable
	 */
	public boolean isSameName(String supplierCategoryName)throws Throwable;
}
